[AFF-BACKEND-003] Создать метод Метод ApplyWeightDecay() (DAILY CRON)
Разработка механизма ежедневного угасания интересов (Decay Strategy) по Cron
NoteКраткая карточка задачи
- Репозиторий / Компонент:
affinity-service(Домен Recommendation Domain). - Контракт метода: Фоновая системная задача (Cron Job / Celery Beat / APScheduler).
- Ссылка на Метод: Спецификация метода
- Статус: Готово к реализации
- Инструкция по шагам:
- На Шаге 4: Сконфигурировать расписание запуска задачи: ежедневно в
03:00по локальному времени. - На Шаге 5: Реализовать массовое снижение весов ассоциаций для симуляции угасания краткосрочных интересов пользователя. Выполнить сканирование ключей аффинити в Redis (используя безопасный
SCANвместо блокирующегоKEYS). - Для каждого веса связи применить математический коэффициент затухания:
New_Score = Current_Score * 0.95. Если после пересчета вес падает ниже порогового значения (например,< 0.1), автоматически удалять связь из Redis для очистки оперативной памяти. - На Шаге 9: По завершении итерации сформировать и отправить асинхронное уведомление с метаданными пересчета матрицы в
bupar-audit-serviceдля логирования шага процесса.
- На Шаге 4: Сконфигурировать расписание запуска задачи: ежедневно в